function isObj(obj){
    return obj!=null&&/^(object|function)$/.test(typeof obj)
}
export function shallowEqual(objA,objB){
    //判断传递进来的参数是否属于一个对象类型
    if(!isObj(objA)||!isObj(objB)) return false
    //通过Reflect.ownKeys方法可以求出一个对象中所有key的集合，以数组形式呈现
    const keysA=Reflect.ownKeys(objA)
    const keysB=Reflect.ownKeys(objB)
    //判断两个对象中的key集合的长度是否一致，如果不一致，表示两个对象中的中的属性个数不一样
    if(objA===objB){
        return true
    }   
    if(keysA.length!==keysB.length) return false
    // keysB集合['name','age']
    // keysA[0] :name
    let idx=0 
    for(let i=0;i<keysA.length;i++){
        let key=keysA[i]
        if(objB.hasOwnProperty(key)&&Object.is(objA[key],objB[key])){
           idx++
           if(idx===keysA.length){
            return true
           }
        }else{
            return false
        }
    }
}